home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 2 / Meeting Pearls Vol. II (1995)(GTI - Schatztruhe)[!].iso / Pearls / dev / GUI / BGUI / include / libraries / bgui_macros.i < prev    next >
Encoding:
Text File  |  1994-09-10  |  37.4 KB  |  1,719 lines

  1.     ifnd LIBRARIES_BGUI_MACROS_I
  2. LIBRARIES_BGUI_MACROS_I SET    1
  3. **
  4. **    $VER: libraries/bgui_macros.i 37.25 (19.08.94)
  5. **    bgui.library macros.
  6. **
  7. **    (C) Copyright 1993-1994 Jaba Development.
  8. **    (C) Copyright 1993-1994 Jan van den Baard.
  9. **    All Rights Reserved.
  10. **
  11.  
  12.     ifnd    LIBRARIES_BGUI_I
  13.     include 'libraries/bgui.i'
  14.     endc
  15.  
  16.     ifnd    LIBRARIES_BGUI_OFFSETS_I
  17.     include 'libraries/bgui_offsets.i'
  18.     endc
  19.  
  20.     ifd    NOTDONE
  21. *****************************************************************************
  22. *
  23. *    General object creation macros.
  24. *
  25. #define HGroupObject        BGUI_NewObject( BGUI_GROUP_GADGET
  26. #define VGroupObject        BGUI_NewObject( BGUI_GROUP_GADGET,\
  27.                         GROUP_Style, GRSTYLE_VERTICAL
  28. #define ButtonObject        BGUI_NewObject( BGUI_BUTTON_GADGET
  29. #define ToggleObject        BGUI_NewObject( BGUI_BUTTON_GADGET,\
  30.                         GA_ToggleSelect, TRUE
  31. #define CycleObject        BGUI_NewObject( BGUI_CYCLE_GADGET
  32. #define CheckBoxObject        BGUI_NewObject( BGUI_CHECKBOX_GADGET
  33. #define InfoObject        BGUI_NewObject( BGUI_INFO_GADGET
  34. #define StringObject        BGUI_NewObject( BGUI_STRING_GADGET
  35. #define PropObject        BGUI_NewObject( BGUI_PROP_GADGET
  36. #define IndicatorObject     BGUI_NewObject( BGUI_INDICATOR_GADGET
  37. #define ProgressObject        BGUI_NewObject( BGUI_PROGRESS_GADGET
  38. #define SliderObject        BGUI_NewObject( BGUI_SLIDER_GADGET
  39. #define PageObject        BGUI_NewObject( BGUI_PAGE_GADGET
  40. #define MxObject        BGUI_NewObject( BGUI_MX_GADGET
  41. #define ListviewObject        BGUI_NewObject( BGUI_LISTVIEW_GADGET
  42. #define ExternalObject        BGUI_NewObject( BGUI_EXTERNAL_GADGET, GA_Left, 0, GA_Top, 0, GA_Width, 0, GA_Height, 0
  43. #define SeperatorObject     BGUI_NewObject( BGUI_SEPERATOR_GADGET
  44.  
  45. #define WindowObject        BGUI_NewObject( BGUI_WINDOW_OBJECT
  46. #define FileReqObject        BGUI_NewObject( BGUI_FILEREQ_OBJECT
  47. #define CommodityObject     BGUI_NewObject( BGUI_COMMODITY_OBJECT
  48.  
  49. #define EndObject        TAG_END )
  50.  
  51. *****************************************************************************
  52. *
  53. *    Label creation.
  54. *
  55. #define Label(l)                LAB_Label, l
  56. #define UScoreLabel(l,u)        LAB_Label, l, LAB_Underscore, u
  57. #define Style(s)                LAB_Style, s
  58. #define Place(p)                LAB_Place, p
  59.  
  60. *****************************************************************************
  61. *
  62. *    Frames.
  63. *
  64. #define ButtonFrame        FRM_Type, FRTYPE_BUTTON
  65. #define RidgeFrame        FRM_Type, FRTYPE_RIDGE
  66. #define DropBoxFrame        FRM_Type, FRTYPE_DROPBOX
  67. #define NeXTFrame        FRM_Type, FRTYPE_NEXT
  68. #define RadioFrame        FRM_Type, FRTYPE_RADIOBUTTON
  69. #define XenFrame        FRM_Type, FRTYPE_XEN_BUTTON
  70.  
  71. * For clarity.
  72. #define StringFrame        RidgeFrame
  73. #define MxFrame         RadioFrame
  74.  
  75. #define FrameTitle(t)           FRM_Title, t
  76.  
  77. * Built-in back fills
  78. #define ShineRaster        FRM_BackFill, SHINE_RASTER
  79. #define ShadowRaster        FRM_BackFill, SHADOW_RASTER
  80. #define ShineShadowRaster    FRM_BackFill, SHINE_SHADOW_RASTER
  81. #define FillRaster        FRM_BackFill, FILL_RASTER
  82. #define ShineFillRaster     FRM_BackFill, SHINE_FILL_RASTER
  83. #define ShadowFillRaster    FRM_BackFill, SHADOW_FILL_RASTER
  84. #define ShineBlock        FRM_BackFill, SHINE_BLOCK
  85. #define ShadowBlock        FRM_BackFill, SHADOW_BLOCK
  86.  
  87. *****************************************************************************
  88. *
  89. *    Vector images.
  90. *
  91. #define GetPath         VIT_BuiltIn, BUILTIN_GETPATH
  92. #define GetFile         VIT_BuiltIn, BUILTIN_GETFILE
  93. #define CheckMark        VIT_BuiltIn, BUILTIN_CHECKMARK
  94. #define PopUp            VIT_BuiltIn, BUILTIN_POPUP
  95. #define ArrowUp         VIT_BuiltIn, BUILTIN_ARROW_UP
  96. #define ArrowDown        VIT_BuiltIn, BUILTIN_ARROW_DOWN
  97. #define ArrowLeft        VIT_BuiltIn, BUILTIN_ARROW_LEFT
  98. #define ArrowRight        VIT_BuiltIn, BUILTIN_ARROW_RIGHT
  99.  
  100. *****************************************************************************
  101. *
  102. *    Group class macros.
  103. *
  104. #define StartMember        GROUP_Member
  105. #define EndMember        TAG_END, 0
  106. #define Spacing(p)              GROUP_Spacing, p
  107. #define HOffset(p)              GROUP_HorizOffset, p
  108. #define VOffset(p)              GROUP_VertOffset, p
  109. #define LOffset(p)              GROUP_LeftOffset, p
  110. #define ROffset(p)              GROUP_RightOffset, p
  111. #define TOffset(p)              GROUP_TopOffset, p
  112. #define BOffset(p)              GROUP_BottomOffset, p
  113. #define VarSpace(w)             GROUP_SpaceObject, w
  114.  
  115. *****************************************************************************
  116. *
  117. *    Layout macros.
  118. *
  119. #define FixMinWidth        LGO_FixMinWidth, TRUE
  120. #define FixMinHeight        LGO_FixMinHeight, TRUE
  121. #define Weight(w)               LGO_Weight, w
  122. #define FixWidth(w)             LGO_FixWidth, w
  123. #define FixHeight(h)            LGO_FixHeight, h
  124. #define Align            LGO_Align, TRUE
  125. #define FixMinSize        FixMinWidth, FixMinHeight
  126. #define FixSize(w,h)            FixWidth(w), FixHeight(h)
  127.  
  128. *****************************************************************************
  129. *
  130. *    Page class macros.
  131. *
  132. #define PageMember        PAGE_Member
  133.  
  134.     endc    * NOTDONE!
  135.  
  136. *****************************************************************************
  137. *    The following macros expect the library base pointer for bgui.library
  138. *    to already be in A6!  If its not, prepare for a trip to India...
  139. *****************************************************************************
  140.  
  141. *****************************************************************************
  142. *
  143. *    "Quick" button creation macros.
  144. *
  145.  
  146. *
  147. *    Labeled "button" gadget with label
  148. *
  149. Button    macro    ;label,id
  150.     ifne    NARG-2
  151.     fail    'Wrong number of arguments to "Button" macro!'
  152.     exitm
  153.     endc
  154.  
  155.     move.l    #TAG_DONE,-(sp)
  156.     move.l    #FRTYPE_BUTTON,-(sp)
  157.     move.l    #FRM_Type,-(sp)
  158.     move.l    #\2,-(sp)
  159.     move.l    #GA_ID,-(sp)
  160.     move.l    #\1,-(sp)
  161.     move.l    #LAB_Label,-(sp)
  162.     movea.l a7,a0
  163.     moveq    #BGUI_BUTTON_GADGET,d0
  164.     jsr    _LVOBGUI_NewObjectA(a6)
  165.     lea    28(sp),sp
  166.     endm
  167.  
  168. *
  169. *    Labeled "button" gadget with HotKey
  170. *
  171. KeyButton    macro    ;label,id
  172.     ifne    NARG-2
  173.     fail    'Wrong number of arguments to "KeyButton" macro!'
  174.     exitm
  175.     endc
  176.  
  177.     move.l    #TAG_DONE,-(sp)
  178.     move.l    #FRTYPE_BUTTON,-(sp)
  179.     move.l    #FRM_Type,-(sp)
  180.     move.l    #\2,-(sp)
  181.     move.l    #GA_ID,-(sp)
  182.     move.l    #'_',-(sp)
  183.     move.l    #LAB_Underscore,-(sp)
  184.     move.l    #\1,-(sp)
  185.     move.l    #LAB_Label,-(sp)
  186.     movea.l a7,a0
  187.     moveq    #BGUI_BUTTON_GADGET,d0
  188.     jsr    _LVOBGUI_NewObjectA(a6)
  189.     lea    36(sp),sp
  190.     endm
  191.  
  192. *
  193. *    Labeled "toggle" gadget
  194. *
  195. Toggle    macro    ;label,state,id
  196.     ifne    NARG-3
  197.     fail    'Wrong number of arguments to "Toggle" macro!'
  198.     exitm
  199.     endc
  200.  
  201.     move.l    #TAG_DONE,-(sp)
  202.     move.l    #FRTYPE_BUTTON,-(sp)
  203.     move.l    #FRM_Type,-(sp)
  204.     move.l    #\3,-(sp)
  205.     move.l    #GA_ID,-(sp)
  206.     move.l    #\2,-(sp)
  207.     move.l    #GA_Selected,-(sp)
  208.     move.l    #\1,-(sp)
  209.     move.l    #LAB_Label,-(sp)
  210.     move.l    #1,-(sp)
  211.     move.l    #GA_ToggleSelect,-(sp)
  212.     movea.l a7,a0
  213.     moveq    #BGUI_BUTTON_GADGET,d0
  214.     jsr    _LVOBGUI_NewObjectA(a6)
  215.     lea    44(sp),sp
  216.     endm
  217.  
  218. *
  219. *    Labeled "toggle" gadget with HotKey
  220. *
  221. KeyToggle    macro    ;label,state,id
  222.     ifne    NARG-3
  223.     fail    'Wrong number of arguments to "KeyToggle" macro!'
  224.     exitm
  225.     endc
  226.  
  227.     move.l    #TAG_DONE,-(sp)
  228.     move.l    #FRTYPE_BUTTON,-(sp)
  229.     move.l    #FRM_Type,-(sp)
  230.     move.l    #\3,-(sp)
  231.     move.l    #GA_ID,-(sp)
  232.     move.l    #\2,-(sp)
  233.     move.l    #GA_Selected,-(sp)
  234.     move.l    #'_',-(sp)
  235.     move.l    #LAB_Underscore,-(sp)
  236.     move.l    #\1,-(sp)
  237.     move.l    #LAB_Label,-(sp)
  238.     move.l    #1,-(sp)
  239.     move.l    #GA_ToggleSelect,-(sp)
  240.     movea.l a7,a0
  241.     moveq    #BGUI_BUTTON_GADGET,d0
  242.     jsr    _LVOBGUI_NewObjectA(a6)
  243.     lea    52(sp),sp
  244.     endm
  245.  
  246. *
  247. *    XEN-style labeled "button" gadget
  248. *
  249. XenButton    macro    ;label,id
  250.     ifne    NARG-2
  251.     fail    'Wrong number of arguments to "XenButton" macro!'
  252.     exitm
  253.     endc
  254.  
  255.     move.l    #TAG_DONE,-(sp)
  256.     move.l    #FRTYPE_XEN_BUTTON,-(sp)
  257.     move.l    #FRM_Type,-(sp)
  258.     move.l    #\2,-(sp)
  259.     move.l    #GA_ID,-(sp)
  260.     move.l    #\1,-(sp)
  261.     move.l    #LAB_Label,-(sp)
  262.     movea.l a7,a0
  263.     moveq    #BGUI_BUTTON_GADGET,d0
  264.     jsr    _LVOBGUI_NewObjectA(a6)
  265.     lea    28(sp),sp
  266.     endm
  267.  
  268. *
  269. *    XEN-style labeled "button" gadget with HotKey
  270. *
  271. XenKeyButton    macro    ;label,id
  272.     ifne    NARG-2
  273.     fail    'Wrong number of arguments to "XenKeyButton" macro!'
  274.     exitm
  275.     endc
  276.  
  277.     move.l    #TAG_DONE,-(sp)
  278.     move.l    #FRTYPE_XEN_BUTTON,-(sp)
  279.     move.l    #FRM_Type,-(sp)
  280.     move.l    #\2,-(sp)
  281.     move.l    #GA_ID,-(sp)
  282.     move.l    #'_',-(sp)
  283.     move.l    #LAB_Underscore,-(sp)
  284.     move.l    #\1,-(sp)
  285.     move.l    #LAB_Label,-(sp)
  286.     movea.l a7,a0
  287.     moveq    #BGUI_BUTTON_GADGET,d0
  288.     jsr    _LVOBGUI_NewObjectA(a6)
  289.     lea    36(sp),sp
  290.     endm
  291.  
  292. *
  293. *    XEN-style labeled "toggle" gadget
  294. *
  295. XenToggle    macro    ;label,state,id
  296.     ifne    NARG-3
  297.     fail    'Wrong number of arguments to "XenToggle" macro!'
  298.     exitm
  299.     endc
  300.  
  301.     move.l    #TAG_DONE,-(sp)
  302.     move.l    #FRTYPE_XEN_BUTTON,-(sp)
  303.     move.l    #FRM_Type,-(sp)
  304.     move.l    #\3,-(sp)
  305.     move.l    #GA_ID,-(sp)
  306.     move.l    #\2,-(sp)
  307.     move.l    #GA_Selected,-(sp)
  308.     move.l    #\1,-(sp)
  309.     move.l    #LAB_Label,-(sp)
  310.     move.l    #1,-(sp)
  311.     move.l    #GA_ToggleSelect,-(sp)
  312.     movea.l a7,a0
  313.     moveq    #BGUI_BUTTON_GADGET,d0
  314.     jsr    _LVOBGUI_NewObjectA(a6)
  315.     lea    44(sp),sp
  316.     endm
  317.  
  318. *
  319. *    XEN-style labeled "toggle" gadget with HotKey
  320. *
  321. XenKeyToggle    macro    ;label,state,id
  322.     ifne    NARG-3
  323.     fail    'Wrong number of arguments to "XenKeyToggle" macro!'
  324.     exitm
  325.     endc
  326.  
  327.     move.l    #TAG_DONE,-(sp)
  328.     move.l    #FRTYPE_BUTTON,-(sp)
  329.     move.l    #FRM_Type,-(sp)
  330.     move.l    #\3,-(sp)
  331.     move.l    #GA_ID,-(sp)
  332.     move.l    #\2,-(sp)
  333.     move.l    #GA_Selected,-(sp)
  334.     move.l    #'_',-(sp)
  335.     move.l    #LAB_Underscore,-(sp)
  336.     move.l    #\1,-(sp)
  337.     move.l    #LAB_Label,-(sp)
  338.     move.l    #1,-(sp)
  339.     move.l    #GA_ToggleSelect,-(sp)
  340.     movea.l a7,a0
  341.     moveq    #BGUI_BUTTON_GADGET,d0
  342.     jsr    _LVOBGUI_NewObjectA(a6)
  343.     lea    52(sp),sp
  344.     endm
  345.  
  346. *****************************************************************************
  347. *
  348. *    "Quick" cycle creation macros.
  349. *
  350.  
  351. *
  352. *    Labeled "cycle" gadget
  353. *
  354. Cycle    macro    ;label,labels,active,id
  355.     ifne    NARG-4
  356.     fail    'Wrong number of arguments to "Cycle" macro!'
  357.     exitm
  358.     endc
  359.  
  360.     move.l    #TAG_DONE,-(sp)
  361.     move.l    #\4,-(sp)
  362.     move.l    #GA_ID,-(sp)
  363.     move.l    #\3,-(sp)
  364.     move.l    #CYC_Active,-(sp)
  365.     move.l    #\2,-(sp)
  366.     move.l    #CYC_Labels,-(sp)
  367.     move.l    #\1,-(sp)
  368.     move.l    #LAB_Label,-(sp)
  369.     move.l    #FRTYPE_BUTTON,-(sp)
  370.     move.l    #FRM_Type,-(sp)
  371.     movea.l a7,a0
  372.     moveq    #BGUI_CYCLE_GADGET,d0
  373.     jsr    _LVOBGUI_NewObjectA(a6)
  374.     lea    44(sp),sp
  375.     endm
  376.  
  377. *
  378. *    Labeled "cycle" gadget with HotKey
  379. *
  380. KeyCycle       macro   ;label,labels,active,id
  381.     ifne    NARG-4
  382.     fail    'Wrong number of arguments to "KeyCycle" macro!'
  383.     exitm
  384.     endc
  385.  
  386.     move.l    #TAG_DONE,-(sp)
  387.     move.l    #\4,-(sp)
  388.     move.l    #GA_ID,-(sp)
  389.     move.l    #\3,-(sp)
  390.     move.l    #CYC_Active,-(sp)
  391.     move.l    #\2,-(sp)
  392.     move.l    #CYC_Labels,-(sp)
  393.     move.l    #\1,-(sp)
  394.     move.l    #LAB_Label,-(sp)
  395.     move.l    #FRTYPE_BUTTON,-(sp)
  396.     move.l    #FRM_Type,-(sp)
  397.     move.l    #'_',-(sp)
  398.     move.l    #LAB_Underscore,-(sp)
  399.     movea.l a7,a0
  400.     moveq    #BGUI_CYCLE_GADGET,d0
  401.     jsr    _LVOBGUI_NewObjectA(a6)
  402.     lea    52(sp),sp
  403.     endm
  404.  
  405. *
  406. *    XEN-style labeled "cycle" gadget
  407. *
  408. XenCycle    macro    ;label,labels,active,id
  409.     ifne    NARG-4
  410.     fail    'Wrong number of arguments to "XenCycle" macro!'
  411.     exitm
  412.     endc
  413.  
  414.     move.l    #TAG_DONE,-(sp)
  415.     move.l    #\4,-(sp)
  416.     move.l    #GA_ID,-(sp)
  417.     move.l    #\3,-(sp)
  418.     move.l    #CYC_Active,-(sp)
  419.     move.l    #\2,-(sp)
  420.     move.l    #CYC_Labels,-(sp)
  421.     move.l    #\1,-(sp)
  422.     move.l    #LAB_Label,-(sp)
  423.     move.l    #FRTYPE_XEN_BUTTON,-(sp)
  424.     move.l    #FRM_Type,-(sp)
  425.     movea.l a7,a0
  426.     moveq    #BGUI_CYCLE_GADGET,d0
  427.     jsr    _LVOBGUI_NewObjectA(a6)
  428.     lea    44(sp),sp
  429.     endm
  430.  
  431. *
  432. *    XEN-style labeled "cycle" gadget with HotKey
  433. *
  434. XenKeyCycle    macro    ;label,labels,active,id
  435.     ifne    NARG-4
  436.     fail    'Wrong number of arguments to "XenKeyCycle" macro!'
  437.     exitm
  438.     endc
  439.  
  440.     move.l    #TAG_DONE,-(sp)
  441.     move.l    #\4,-(sp)
  442.     move.l    #GA_ID,-(sp)
  443.     move.l    #\3,-(sp)
  444.     move.l    #CYC_Active,-(sp)
  445.     move.l    #\2,-(sp)
  446.     move.l    #CYC_Labels,-(sp)
  447.     move.l    #\1,-(sp)
  448.     move.l    #LAB_Label,-(sp)
  449.     move.l    #FRTYPE_XEN_BUTTON,-(sp)
  450.     move.l    #FRM_Type,-(sp)
  451.     move.l    #'_',-(sp)
  452.     move.l    #LAB_Underscore,-(sp)
  453.     movea.l a7,a0
  454.     moveq    #BGUI_CYCLE_GADGET,d0
  455.     jsr    _LVOBGUI_NewObjectA(a6)
  456.     lea    52(sp),sp
  457.     endm
  458.  
  459. *
  460. *    Labeled PopUp "cycle" gadget
  461. *
  462. PopCycle    macro    ;label,labels,active,id
  463.     ifne    NARG-4
  464.     fail    'Wrong number of arguments to "PopCycle" macro!'
  465.     exitm
  466.     endc
  467.  
  468.     move.l    #TAG_DONE,-(sp)
  469.     move.l    #\4,-(sp)
  470.     move.l    #GA_ID,-(sp)
  471.     move.l    #\3,-(sp)
  472.     move.l    #CYC_Active,-(sp)
  473.     move.l    #\2,-(sp)
  474.     move.l    #CYC_Labels,-(sp)
  475.     move.l    #\1,-(sp)
  476.     move.l    #LAB_Label,-(sp)
  477.     move.l    #FRTYPE_BUTTON,-(sp)
  478.     move.l    #FRM_Type,-(sp)
  479.     move.l    #1,-(sp)
  480.     move.l    #CYC_Popup,-(sp)
  481.     movea.l a7,a0
  482.     moveq    #BGUI_CYCLE_GADGET,d0
  483.     jsr    _LVOBGUI_NewObjectA(a6)
  484.     lea    52(sp),sp
  485.     endm
  486.  
  487. *
  488. *    Labeled PopUp "cycle" gadget with HotKey
  489. *
  490. KeyPopCycle    macro    ;label,labels,active,id
  491.     ifne    NARG-4
  492.     fail    'Wrong number of arguments to "KeyPopCycle" macro!'
  493.     exitm
  494.     endc
  495.  
  496.     move.l    #TAG_DONE,-(sp)
  497.     move.l    #\4,-(sp)
  498.     move.l    #GA_ID,-(sp)
  499.     move.l    #\3,-(sp)
  500.     move.l    #CYC_Active,-(sp)
  501.     move.l    #\2,-(sp)
  502.     move.l    #CYC_Labels,-(sp)
  503.     move.l    #\1,-(sp)
  504.     move.l    #LAB_Label,-(sp)
  505.     move.l    #FRTYPE_BUTTON,-(sp)
  506.     move.l    #FRM_Type,-(sp)
  507.     move.l    #1,-(sp)
  508.     move.l    #CYC_Popup,-(sp)
  509.     move.l    #'_',-(sp)
  510.     move.l    #LAB_Underscore,-(sp)
  511.     movea.l a7,a0
  512.     moveq    #BGUI_CYCLE_GADGET,d0
  513.     jsr    _LVOBGUI_NewObjectA(a6)
  514.     lea    60(sp),sp
  515.     endm
  516.  
  517. *
  518. *    XEN-style labeled PopUp "cycle" gadget
  519. *
  520. XenPopCycle    macro    ;label,labels,active,id
  521.     ifne    NARG-4
  522.     fail    'Wrong number of arguments to "XenPopCycle" macro!'
  523.     exitm
  524.     endc
  525.  
  526.     move.l    #TAG_DONE,-(sp)
  527.     move.l    #\4,-(sp)
  528.     move.l    #GA_ID,-(sp)
  529.     move.l    #\3,-(sp)
  530.     move.l    #CYC_Active,-(sp)
  531.     move.l    #\2,-(sp)
  532.     move.l    #CYC_Labels,-(sp)
  533.     move.l    #\1,-(sp)
  534.     move.l    #LAB_Label,-(sp)
  535.     move.l    #FRTYPE_XEN_BUTTON,-(sp)
  536.     move.l    #FRM_Type,-(sp)
  537.     move.l    #1,-(sp)
  538.     move.l    #CYC_Popup,-(sp)
  539.     movea.l a7,a0
  540.     moveq    #BGUI_CYCLE_GADGET,d0
  541.     jsr    _LVOBGUI_NewObjectA(a6)
  542.     lea    52(sp),sp
  543.     endm
  544.  
  545. *
  546. *    XEN-style labeled PopUp "cycle" gadget with HotKey
  547. *
  548. XenKeyPopCycle    macro    ;label,labels,active,id
  549.     ifne    NARG-4
  550.     fail    'Wrong number of arguments to "XenKeyPopCycle" macro!'
  551.     exitm
  552.     endc
  553.  
  554.     move.l    #TAG_DONE,-(sp)
  555.     move.l    #\4,-(sp)
  556.     move.l    #GA_ID,-(sp)
  557.     move.l    #\3,-(sp)
  558.     move.l    #CYC_Active,-(sp)
  559.     move.l    #\2,-(sp)
  560.     move.l    #CYC_Labels,-(sp)
  561.     move.l    #\1,-(sp)
  562.     move.l    #LAB_Label,-(sp)
  563.     move.l    #FRTYPE_XEN_BUTTON,-(sp)
  564.     move.l    #FRM_Type,-(sp)
  565.     move.l    #1,-(sp)
  566.     move.l    #CYC_Popup,-(sp)
  567.     move.l    #'_',-(sp)
  568.     move.l    #LAB_Underscore,-(sp)
  569.     movea.l a7,a0
  570.     moveq    #BGUI_CYCLE_GADGET,d0
  571.     jsr    _LVOBGUI_NewObjectA(a6)
  572.     lea    60(sp),sp
  573.     endm
  574.  
  575.     ifd    NOTDONE
  576. *****************************************************************************
  577. *
  578. *    "Quick" checkbox creation macros.
  579. *
  580.  
  581. *
  582. *    Standard labeled "checkbox" gadget
  583. CheckBox    macro    ;label,state,id
  584.     ifne    NARG-3
  585.     fail    'Wrong number of arguments to "CheckBox" macro!'
  586.     exitm
  587.     endc
  588.  
  589.     move.l    #TAG_DONE,-(sp)
  590.     move.l    #FRTYPE_BUTTON,-(sp)
  591.     move.l    #FRM_Type,-(sp)
  592.     move.l    #FRF_EDGES_ONLY,-(sp)
  593.     move.l    #FRM_Flags,-(sp)
  594.     move.l    #\3,-(sp)
  595.     move.l    #GA_ID,-(sp)
  596.     move.l    #\2,-(sp)
  597.     move.l    #GA_Selected,-(sp)
  598.     move.l    #\1,-(sp)
  599.     move.l    #LAB_Label,-(sp)
  600.     movea.l a7,a0
  601.     moveq    #BGUI_CHECKBOX_GADGET,d0
  602.     jsr    _LVOBGUI_NewObjectA(a6)
  603.     lea    44(sp),sp
  604.     endm
  605. ****    FixMinSize
  606.  
  607. #define KeyCheckBox(label,state,id)\
  608.     CheckBoxObject,\
  609.         LAB_Label,        label,\
  610.         LAB_Underscore,     '_',\
  611.         GA_ID,            id,\
  612.         ButtonFrame,\
  613.         FRM_Flags,        FRF_EDGES_ONLY,\
  614.         GA_Selected,        state,\
  615.     EndObject, FixMinSize
  616.  
  617. #define XenCheckBox(label,state,id)\
  618.     CheckBoxObject,\
  619.         LAB_Label,        label,\
  620.         GA_ID,            id,\
  621.         XenFrame,\
  622.         FRM_Flags,        FRF_EDGES_ONLY,\
  623.         GA_Selected,        state,\
  624.     EndObject, FixMinSize
  625.  
  626. #define XenKeyCheckBox(label,state,id)\
  627.     CheckBoxObject,\
  628.         LAB_Label,        label,\
  629.         LAB_Underscore,     '_',\
  630.         GA_ID,            id,\
  631.         XenFrame,\
  632.         FRM_Flags,        FRF_EDGES_ONLY,\
  633.         GA_Selected,        state,\
  634.     EndObject, FixMinSize
  635.  
  636.     endc    * NOTDONE!
  637.  
  638. *****************************************************************************
  639. *
  640. *    "Quick" info object creation macros.
  641. *
  642.  
  643. *
  644. *    Labeled "info" gadget with Fixed width
  645. *
  646. InfoFixed    macro    ;label,text,args,numlines
  647.     ifne    NARG-4
  648.     fail    'Wrong number of arguments to "InfoFixed" macro!'
  649.     exitm
  650.     endc
  651.  
  652.     move.l    #TAG_DONE,-(sp)
  653.     move.l    #FRTYPE_BUTTON,-(sp)
  654.     move.l    #FRM_Type,-(sp)
  655.     move.l    #FRF_RECESSED,-(sp)
  656.     move.l    #FRM_Flags,-(sp)
  657.     move.l    #1,-(sp)
  658.     move.l    #INFO_FixTextWidth,-(sp)
  659.     move.l    #\4,-(sp)
  660.     move.l    #INFO_MinLines,-(sp)
  661.     move.l    #\3,-(sp)
  662.     move.l    #INFO_Args,-(sp)
  663.     move.l    #\2,-(sp)
  664.     move.l    #INFO_TextFormat,-(sp)
  665.     move.l    #\1,-(sp)
  666.     move.l    #LAB_Label,-(sp)
  667.     movea.l a7,a0
  668.     moveq    #BGUI_INFO_GADGET,d0
  669.     jsr    _LVOBGUI_NewObjectA(a6)
  670.     lea    60(sp),sp
  671.     endm
  672.  
  673. *
  674. *    Labeled "info" gadget
  675. *
  676. InfoObj macro    ;label,text,args,numlines
  677.     ifne    NARG-4
  678.     fail    'Wrong number of arguments to "InfoObj" macro!'
  679.     exitm
  680.     endc
  681.  
  682.     move.l    #TAG_DONE,-(sp)
  683.     move.l    #FRTYPE_BUTTON,-(sp)
  684.     move.l    #FRM_Type,-(sp)
  685.     move.l    #FRF_RECESSED,-(sp)
  686.     move.l    #FRM_Flags,-(sp)
  687.     move.l    #\4,-(sp)
  688.     move.l    #INFO_MinLines,-(sp)
  689.     move.l    #\3,-(sp)
  690.     move.l    #INFO_Args,-(sp)
  691.     move.l    #\2,-(sp)
  692.     move.l    #INFO_TextFormat,-(sp)
  693.     move.l    #\1,-(sp)
  694.     move.l    #LAB_Label,-(sp)
  695.     movea.l a7,a0
  696.     moveq    #BGUI_INFO_GADGET,d0
  697.     jsr    _LVOBGUI_NewObjectA(a6)
  698.     lea    52(sp),sp
  699.     endm
  700.  
  701. *****************************************************************************
  702. *
  703. *    "Quick" string/integer creation macros.
  704. *
  705.  
  706. *
  707. *    Labeled "string" gadget
  708. *
  709. String    macro    ;label,contents,maxchars,id
  710.     ifne    NARG-4
  711.     fail    'Wrong number of arguments to "String" macro!'
  712.     exitm
  713.     endc
  714.  
  715.     move.l    #TAG_DONE,-(sp)
  716.     move.l    #FRTYPE_RIDGE,-(sp)
  717.     move.l    #FRM_Type,-(sp)
  718.     move.l    #\4,-(sp)
  719.     move.l    #GA_ID,-(sp)
  720.     move.l    #\3,-(sp)
  721.     move.l    #STRINGA_MaxChars,-(sp)
  722.     move.l    #\2,-(sp)
  723.     move.l    #STRINGA_TextVal,-(sp)
  724.     move.l    #\1,-(sp)
  725.     move.l    #LAB_Label,-(sp)
  726.     movea.l a7,a0
  727.     moveq    #BGUI_STRING_GADGET,d0
  728.     jsr    _LVOBGUI_NewObjectA(a6)
  729.     lea    44(sp),sp
  730.     endm
  731.  
  732. *
  733. *    Labeled "string" gadget with HotKey
  734. *
  735. KeyString    macro    ;label,contents,maxchars,id
  736.     ifne    NARG-4
  737.     fail    'Wrong number of arguments to "KeyString" macro!'
  738.     exitm
  739.     endc
  740.  
  741.     move.l    #TAG_DONE,-(sp)
  742.     move.l    #FRTYPE_RIDGE,-(sp)
  743.     move.l    #FRM_Type,-(sp)
  744.     move.l    #'_',-(sp)
  745.     move.l    #LAB_Underscore,-(sp)
  746.     move.l    #\4,-(sp)
  747.     move.l    #GA_ID,-(sp)
  748.     move.l    #\3,-(sp)
  749.     move.l    #STRINGA_MaxChars,-(sp)
  750.     move.l    #\2,-(sp)
  751.     move.l    #STRINGA_TextVal,-(sp)
  752.     move.l    #\1,-(sp)
  753.     move.l    #LAB_Label,-(sp)
  754.     movea.l a7,a0
  755.     moveq    #BGUI_STRING_GADGET,d0
  756.     jsr    _LVOBGUI_NewObjectA(a6)
  757.     lea    52(sp),sp
  758.     endm
  759.  
  760. *
  761. *    Labeled "string" gadget with Tab-key cycling on
  762. *
  763. TabString    macro    ;label,contents,maxchars,id
  764.     ifne    NARG-4
  765.     fail    'Wrong number of arguments to "TabString" macro!'
  766.     exitm
  767.     endc
  768.  
  769.     move.l    #TAG_DONE,-(sp)
  770.     move.l    #FRTYPE_RIDGE,-(sp)
  771.     move.l    #FRM_Type,-(sp)
  772.     move.l    #1,-(sp)
  773.     move.l    #GA_TabCycle,-(sp)
  774.     move.l    #\4,-(sp)
  775.     move.l    #GA_ID,-(sp)
  776.     move.l    #\3,-(sp)
  777.     move.l    #STRINGA_MaxChars,-(sp)
  778.     move.l    #\2,-(sp)
  779.     move.l    #STRINGA_TextVal,-(sp)
  780.     move.l    #\1,-(sp)
  781.     move.l    #LAB_Label,-(sp)
  782.     movea.l a7,a0
  783.     moveq    #BGUI_STRING_GADGET,d0
  784.     jsr    _LVOBGUI_NewObjectA(a6)
  785.     lea    52(sp),sp
  786.     endm
  787.  
  788. *
  789. *    Labeled "string" gadget with HotKey and Tab-key cycling on
  790. *
  791. TabKeyString    macro    ;label,contents,maxchars,id
  792.     ifne    NARG-4
  793.     fail    'Wrong number of arguments to "TabKeyString" macro!'
  794.     exitm
  795.     endc
  796.  
  797.     move.l    #TAG_DONE,-(sp)
  798.     move.l    #FRTYPE_RIDGE,-(sp)
  799.     move.l    #FRM_Type,-(sp)
  800.     move.l    #'_',-(sp)
  801.     move.l    #LAB_Underscore,-(sp)
  802.     move.l    #1,-(sp)
  803.     move.l    #GA_TabCycle,-(sp)
  804.     move.l    #\4,-(sp)
  805.     move.l    #GA_ID,-(sp)
  806.     move.l    #\3,-(sp)
  807.     move.l    #STRINGA_MaxChars,-(sp)
  808.     move.l    #\2,-(sp)
  809.     move.l    #STRINGA_TextVal,-(sp)
  810.     move.l    #\1,-(sp)
  811.     move.l    #LAB_Label,-(sp)
  812.     movea.l a7,a0
  813.     moveq    #BGUI_STRING_GADGET,d0
  814.     jsr    _LVOBGUI_NewObjectA(a6)
  815.     lea    60(sp),sp
  816.     endm
  817.  
  818. *
  819. *    Labeled "integer" gadget
  820. *
  821. Integer macro    ;label,contents,maxchars,id
  822.     ifne    NARG-4
  823.     fail    'Wrong number of arguments to "Integer" macro!'
  824.     exitm
  825.     endc
  826.  
  827.     move.l    #TAG_DONE,-(sp)
  828.     move.l    #FRTYPE_RIDGE,-(sp)
  829.     move.l    #FRM_Type,-(sp)
  830.     move.l    #\4,-(sp)
  831.     move.l    #GA_ID,-(sp)
  832.     move.l    #\3,-(sp)
  833.     move.l    #STRINGA_MaxChars,-(sp)
  834.     move.l    #\2,-(sp)
  835.     move.l    #STRINGA_LongVal,-(sp)
  836.     move.l    #\1,-(sp)
  837.     move.l    #LAB_Label,-(sp)
  838.     movea.l a7,a0
  839.     moveq    #BGUI_STRING_GADGET,d0
  840.     jsr    _LVOBGUI_NewObjectA(a6)
  841.     lea    44(sp),sp
  842.     endm
  843.  
  844. *
  845. *    Labeled "integer" gadget with HotKey
  846. *
  847. KeyInteger    macro    ;label,contents,maxchars,id
  848.     ifne    NARG-4
  849.     fail    'Wrong number of arguments to "KeyInteger" macro!'
  850.     exitm
  851.     endc
  852.  
  853.     move.l    #TAG_DONE,-(sp)
  854.     move.l    #FRTYPE_RIDGE,-(sp)
  855.     move.l    #FRM_Type,-(sp)
  856.     move.l    #'_',-(sp)
  857.     move.l    #LAB_Underscore,-(sp)
  858.     move.l    #\4,-(sp)
  859.     move.l    #GA_ID,-(sp)
  860.     move.l    #\3,-(sp)
  861.     move.l    #STRINGA_MaxChars,-(sp)
  862.     move.l    #\2,-(sp)
  863.     move.l    #STRINGA_LongVal,-(sp)
  864.     move.l    #\1,-(sp)
  865.     move.l    #LAB_Label,-(sp)
  866.     movea.l a7,a0
  867.     moveq    #BGUI_STRING_GADGET,d0
  868.     jsr    _LVOBGUI_NewObjectA(a6)
  869.     lea    52(sp),sp
  870.     endm
  871.  
  872. *
  873. *    Labeled "integer" gadget with Tab-key cycling on
  874. *
  875. TabInteger    macro    ;label,contents,maxchars,id
  876.     ifne    NARG-4
  877.     fail    'Wrong number of arguments to "TabInteger" macro!'
  878.     exitm
  879.     endc
  880.  
  881.     move.l    #TAG_DONE,-(sp)
  882.     move.l    #FRTYPE_RIDGE,-(sp)
  883.     move.l    #FRM_Type,-(sp)
  884.     move.l    #1,-(sp)
  885.     move.l    #GA_TabCycle,-(sp)
  886.     move.l    #\4,-(sp)
  887.     move.l    #GA_ID,-(sp)
  888.     move.l    #\3,-(sp)
  889.     move.l    #STRINGA_MaxChars,-(sp)
  890.     move.l    #\2,-(sp)
  891.     move.l    #STRINGA_LongVal,-(sp)
  892.     move.l    #\1,-(sp)
  893.     move.l    #LAB_Label,-(sp)
  894.     movea.l a7,a0
  895.     moveq    #BGUI_STRING_GADGET,d0
  896.     jsr    _LVOBGUI_NewObjectA(a6)
  897.     lea    52(sp),sp
  898.     endm
  899.  
  900. *
  901. *    Labeled "integer" gadget with HotKey and Tab-key cycling on
  902. *
  903. TabKeyInteger    macro    ;label,contents,maxchars,id
  904.     ifne    NARG-4
  905.     fail    'Wrong number of arguments to "TabKeyInteger" macro!'
  906.     exitm
  907.     endc
  908.  
  909.     move.l    #TAG_DONE,-(sp)
  910.     move.l    #FRTYPE_RIDGE,-(sp)
  911.     move.l    #FRM_Type,-(sp)
  912.     move.l    #'_',-(sp)
  913.     move.l    #LAB_Underscore,-(sp)
  914.     move.l    #1,-(sp)
  915.     move.l    #GA_TabCycle,-(sp)
  916.     move.l    #\4,-(sp)
  917.     move.l    #GA_ID,-(sp)
  918.     move.l    #\3,-(sp)
  919.     move.l    #STRINGA_MaxChars,-(sp)
  920.     move.l    #\2,-(sp)
  921.     move.l    #STRINGA_LongVal,-(sp)
  922.     move.l    #\1,-(sp)
  923.     move.l    #LAB_Label,-(sp)
  924.     movea.l a7,a0
  925.     moveq    #BGUI_STRING_GADGET,d0
  926.     jsr    _LVOBGUI_NewObjectA(a6)
  927.     lea    60(sp),sp
  928.     endm
  929.  
  930.     ifd    NOTDONE
  931. *
  932. *    STRINGA_Pens & STRINGA_ActivePens pen-pack macro.
  933. *
  934. #define PACKPENS(a,b) (((\2<<8)&0xFF00)|((\1)&0x00FF))
  935.     endc    * NOTDONE
  936.  
  937. *****************************************************************************
  938. *
  939. *    "Quick" scroller creation macros.
  940. *
  941.  
  942. *
  943. *    Labeled "horizontal scroller" gadget
  944. *
  945. HorizScroller    macro    ;label,top,total,visible,id
  946.     ifne    NARG-5
  947.     fail    'Wrong number of arguments to "HorizScroller" macro!'
  948.     exitm
  949.     endc
  950.  
  951.     move.l    #TAG_DONE,-(sp)
  952.     move.l    #1,-(sp)
  953.     move.l    #PGA_Arrows,-(sp)
  954.     move.l    #FREEHORIZ,-(sp)
  955.     move.l    #PGA_Freedom,-(sp)
  956.     move.l    #\5,-(sp)
  957.     move.l    #GA_ID,-(sp)
  958.     move.l    #\4,-(sp)
  959.     move.l    #PGA_Visible,-(sp)
  960.     move.l    #\3,-(sp)
  961.     move.l    #PGA_Total,-(sp)
  962.     move.l    #\2,-(sp)
  963.     move.l    #PGA_Top,-(sp)
  964.     move.l    #\1,-(sp)
  965.     move.l    #LAB_Label,-(sp)
  966.     movea.l a7,a0
  967.     moveq    #BGUI_PROP_GADGET,d0
  968.     jsr    _LVOBGUI_NewObjectA(a6)
  969.     lea    60(sp),sp
  970.     endm
  971.  
  972. *
  973. *    Labeled "vertical scroller" gadget
  974. *
  975. VertScroller    macro    ;label,top,total,visible,id
  976.     ifne    NARG-5
  977.     fail    'Wrong number of arguments to "VertScroller" macro!'
  978.     exitm
  979.     endc
  980.  
  981.     move.l    #TAG_DONE,-(sp)
  982.     move.l    #1,-(sp)
  983.     move.l    #PGA_Arrows,-(sp)
  984.     move.l    #\5,-(sp)
  985.     move.l    #GA_ID,-(sp)
  986.     move.l    #\4,-(sp)
  987.     move.l    #PGA_Visible,-(sp)
  988.     move.l    #\3,-(sp)
  989.     move.l    #PGA_Total,-(sp)
  990.     move.l    #\2,-(sp)
  991.     move.l    #PGA_Top,-(sp)
  992.     move.l    #\1,-(sp)
  993.     move.l    #LAB_Label,-(sp)
  994.     movea.l a7,a0
  995.     moveq    #BGUI_PROP_GADGET,d0
  996.     jsr    _LVOBGUI_NewObjectA(a6)
  997.     lea    52(sp),sp
  998.     endm
  999.  
  1000. *
  1001. *    Labeled "horizontal scroller" gadget with HotKey
  1002. *
  1003. KeyHorizScroller    macro    ;label,top,total,visible,id
  1004.     ifne    NARG-5
  1005.     fail    'Wrong number of arguments to "KeyHorizScroller" macro!'
  1006.     exitm
  1007.     endc
  1008.  
  1009.     move.l    #TAG_DONE,-(sp)
  1010.     move.l    #'_',-(sp)
  1011.     move.l    #LAB_Underscore,-(sp)
  1012.     move.l    #1,-(sp)
  1013.     move.l    #PGA_Arrows,-(sp)
  1014.     move.l    #FREEHORIZ,-(sp)
  1015.     move.l    #PGA_Freedom,-(sp)
  1016.     move.l    #\5,-(sp)
  1017.     move.l    #GA_ID,-(sp)
  1018.     move.l    #\4,-(sp)
  1019.     move.l    #PGA_Visible,-(sp)
  1020.     move.l    #\3,-(sp)
  1021.     move.l    #PGA_Total,-(sp)
  1022.     move.l    #\2,-(sp)
  1023.     move.l    #PGA_Top,-(sp)
  1024.     move.l    #\1,-(sp)
  1025.     move.l    #LAB_Label,-(sp)
  1026.     movea.l a7,a0
  1027.     moveq    #BGUI_PROP_GADGET,d0
  1028.     jsr    _LVOBGUI_NewObjectA(a6)
  1029.     lea    68(sp),sp
  1030.     endm
  1031.  
  1032. *
  1033. *    Labeled "vertical scroller" gadget with HotKey
  1034. *
  1035. KeyVertScroller macro    ;label,top,total,visible,id
  1036.     ifne    NARG-5
  1037.     fail    'Wrong number of arguments to "KeyVertScroller" macro!'
  1038.     exitm
  1039.     endc
  1040.  
  1041.     move.l    #TAG_DONE,-(sp)
  1042.     move.l    #'_',-(sp)
  1043.     move.l    #LAB_Underscore,-(sp)
  1044.     move.l    #1,-(sp)
  1045.     move.l    #PGA_Arrows,-(sp)
  1046.     move.l    #\5,-(sp)
  1047.     move.l    #GA_ID,-(sp)
  1048.     move.l    #\4,-(sp)
  1049.     move.l    #PGA_Visible,-(sp)
  1050.     move.l    #\3,-(sp)
  1051.     move.l    #PGA_Total,-(sp)
  1052.     move.l    #\2,-(sp)
  1053.     move.l    #PGA_Top,-(sp)
  1054.     move.l    #\1,-(sp)
  1055.     move.l    #LAB_Label,-(sp)
  1056.     movea.l a7,a0
  1057.     moveq    #BGUI_PROP_GADGET,d0
  1058.     jsr    _LVOBGUI_NewObjectA(a6)
  1059.     lea    60(sp),sp
  1060.     endm
  1061.  
  1062. *****************************************************************************
  1063. *
  1064. *    "Quick" indicator creation macros.
  1065. *
  1066.  
  1067. *
  1068. *    "indicator" gadget
  1069. *
  1070. Indicator    macro    ;min,max,level,just
  1071.     ifne    NARG-4
  1072.     fail    'Wrong number of arguments to "Indicator" macro!'
  1073.     exitm
  1074.     endc
  1075.  
  1076.     move.l    #TAG_DONE,-(sp)
  1077.     move.l    #\4,-(sp)
  1078.     move.l    #INDIC_Justification,-(sp)
  1079.     move.l    #\3,-(sp)
  1080.     move.l    #INDIC_Level,-(sp)
  1081.     move.l    #\2,-(sp)
  1082.     move.l    #INDIC_Max,-(sp)
  1083.     move.l    #\1,-(sp)
  1084.     move.l    #INDIC_Min,-(sp)
  1085.     movea.l a7,a0
  1086.     moveq    #BGUI_INDICATOR_GADGET,d0
  1087.     jsr    _LVOBGUI_NewObjectA(a6)
  1088.     lea    36(sp),sp
  1089.     endm
  1090.  
  1091. *
  1092. *    "indicator" gadget with User formatting
  1093. *
  1094. IndicatorFormat macro    ;min,max,level,just,format
  1095.     ifne    NARG-5
  1096.     fail    'Wrong number of arguments to "IndicatorFormat" macro!'
  1097.     exitm
  1098.     endc
  1099.  
  1100.     move.l    #TAG_DONE,-(sp)
  1101.     move.l    #\5,-(sp)
  1102.     move.l    #INDIC_FormatString,-(sp)
  1103.     move.l    #\4,-(sp)
  1104.     move.l    #INDIC_Justification,-(sp)
  1105.     move.l    #\3,-(sp)
  1106.     move.l    #INDIC_Level,-(sp)
  1107.     move.l    #\2,-(sp)
  1108.     move.l    #INDIC_Max,-(sp)
  1109.     move.l    #\1,-(sp)
  1110.     move.l    #INDIC_Min,-(sp)
  1111.     movea.l a7,a0
  1112.     moveq    #BGUI_INDICATOR_GADGET,d0
  1113.     jsr    _LVOBGUI_NewObjectA(a6)
  1114.     lea    44(sp),sp
  1115.     endm
  1116.  
  1117. *****************************************************************************
  1118. *
  1119. *    "Quick" progress creation macros.
  1120. *
  1121.  
  1122. *
  1123. *    Labeled horizontal "progress" gadget
  1124. *
  1125. HorizProgress    macro    ;label,min,max,done
  1126.     ifne    NARG-4
  1127.     fail    'Wrong number of arguments to "HorizProgress" macro!'
  1128.     exitm
  1129.     endc
  1130.  
  1131.     move.l    #TAG_DONE,-(sp)
  1132.     move.l    #FRTYPE_BUTTON,-(sp)
  1133.     move.l    #FRM_Type,-(sp)
  1134.     move.l    #FRF_RECESSED,-(sp)
  1135.     move.l    #FRM_Flags,-(sp)
  1136.     move.l    #\4,-(sp)
  1137.     move.l    #PROGRESS_Done,-(sp)
  1138.     move.l    #\3,-(sp)
  1139.     move.l    #PROGRESS_Max,-(sp)
  1140.     move.l    #\2,-(sp)
  1141.     move.l    #PROGRESS_Min,-(sp)
  1142.     move.l    #\1,-(sp)
  1143.     move.l    #LAB_Label,-(sp)
  1144.     movea.l a7,a0
  1145.     moveq    #BGUI_PROGRESS_GADGET,d0
  1146.     jsr    _LVOBGUI_NewObjectA(a6)
  1147.     lea    52(sp),sp
  1148.     endm
  1149.  
  1150. *
  1151. *    Labeled vertical "progress" gadget
  1152. *
  1153. VertProgress    macro    ;label,min,max,done
  1154.     ifne    NARG-4
  1155.     fail    'Wrong number of arguments to "VertProgress" macro!'
  1156.     exitm
  1157.     endc
  1158.  
  1159.     move.l    #TAG_DONE,-(sp)
  1160.     move.l    #FRTYPE_BUTTON,-(sp)
  1161.     move.l    #FRM_Type,-(sp)
  1162.     move.l    #FRF_RECESSED,-(sp)
  1163.     move.l    #FRM_Flags,-(sp)
  1164.     move.l    #1,-(sp)
  1165.     move.l    #PROGRESS_Vertical,-(sp)
  1166.     move.l    #\4,-(sp)
  1167.     move.l    #PROGRESS_Done,-(sp)
  1168.     move.l    #\3,-(sp)
  1169.     move.l    #PROGRESS_Max,-(sp)
  1170.     move.l    #\2,-(sp)
  1171.     move.l    #PROGRESS_Min,-(sp)
  1172.     move.l    #\1,-(sp)
  1173.     move.l    #LAB_Label,-(sp)
  1174.     movea.l a7,a0
  1175.     moveq    #BGUI_PROGRESS_GADGET,d0
  1176.     jsr    _LVOBGUI_NewObjectA(a6)
  1177.     lea    60(sp),sp
  1178.     endm
  1179.  
  1180. *****************************************************************************
  1181. *
  1182. *    "Quick" slider creation macros.
  1183. *
  1184.  
  1185. *
  1186. *    Labeled horizontal "slider" gadget
  1187. *
  1188. HorizSlider    macro    ;label,min,max,level,id
  1189.     ifne    NARG-5
  1190.     fail    'Wrong number of arguments to "HorizSlider" macro!'
  1191.     exitm
  1192.     endc
  1193.  
  1194.     move.l    #TAG_DONE,-(sp)
  1195.     move.l    #\5,-(sp)
  1196.     move.l    #GA_ID,-(sp)
  1197.     move.l    #\4,-(sp)
  1198.     move.l    #SLIDER_Level,-(sp)
  1199.     move.l    #\3,-(sp)
  1200.     move.l    #SLIDER_Max,-(sp)
  1201.     move.l    #\2,-(sp)
  1202.     move.l    #SLIDER_Min,-(sp)
  1203.     move.l    #\1,-(sp)
  1204.     move.l    #LAB_Label,-(sp)
  1205.     movea.l a7,a0
  1206.     moveq    #BGUI_SLIDER_GADGET,d0
  1207.     jsr    _LVOBGUI_NewObjectA(a6)
  1208.     lea    44(sp),sp
  1209.     endm
  1210.  
  1211. *
  1212. *    Labeled vertical "slider" gadget
  1213. *
  1214. VertSlider    macro    ;label,min,max,level,id
  1215.     ifne    NARG-5
  1216.     fail    'Wrong number of arguments to "VertSlider" macro!'
  1217.     exitm
  1218.     endc
  1219.  
  1220.     move.l    #TAG_DONE,-(sp)
  1221.     move.l    #FREEVERT,-(sp)
  1222.     move.l    #PGA_Freedom,-(sp)
  1223.     move.l    #\5,-(sp)
  1224.     move.l    #GA_ID,-(sp)
  1225.     move.l    #\4,-(sp)
  1226.     move.l    #SLIDER_Level,-(sp)
  1227.     move.l    #\3,-(sp)
  1228.     move.l    #SLIDER_Max,-(sp)
  1229.     move.l    #\2,-(sp)
  1230.     move.l    #SLIDER_Min,-(sp)
  1231.     move.l    #\1,-(sp)
  1232.     move.l    #LAB_Label,-(sp)
  1233.     movea.l a7,a0
  1234.     moveq    #BGUI_SLIDER_GADGET,d0
  1235.     jsr    _LVOBGUI_NewObjectA(a6)
  1236.     lea    52(sp),sp
  1237.     endm
  1238.  
  1239. *
  1240. *    Labeled horizontal "slider" gadget with HotKey
  1241. *
  1242. KeyHorizSlider    macro    ;label,min,max,level,id
  1243.     ifne    NARG-5
  1244.     fail    'Wrong number of arguments to "KeyHorizSlider" macro!'
  1245.     exitm
  1246.     endc
  1247.  
  1248.     move.l    #TAG_DONE,-(sp)
  1249.     move.l    #'_',-(sp)
  1250.     move.l    #LAB_Underscore,-(sp)
  1251.     move.l    #\5,-(sp)
  1252.     move.l    #GA_ID,-(sp)
  1253.     move.l    #\4,-(sp)
  1254.     move.l    #SLIDER_Level,-(sp)
  1255.     move.l    #\3,-(sp)
  1256.     move.l    #SLIDER_Max,-(sp)
  1257.     move.l    #\2,-(sp)
  1258.     move.l    #SLIDER_Min,-(sp)
  1259.     move.l    #\1,-(sp)
  1260.     move.l    #LAB_Label,-(sp)
  1261.     movea.l a7,a0
  1262.     moveq    #BGUI_SLIDER_GADGET,d0
  1263.     jsr    _LVOBGUI_NewObjectA(a6)
  1264.     lea    52(sp),sp
  1265.     endm
  1266.  
  1267. *
  1268. *    Labeled vertical "slider" gadget with HotKey
  1269. *
  1270. KeyVertSlider    macro    ;label,min,max,level,id
  1271.     ifne    NARG-5
  1272.     fail    'Wrong number of arguments to "KeyVertSlider" macro!'
  1273.     exitm
  1274.     endc
  1275.  
  1276.     move.l    #TAG_DONE,-(sp)
  1277.     move.l    #'_',-(sp)
  1278.     move.l    #LAB_Underscore,-(sp)
  1279.     move.l    #FREEVERT,-(sp)
  1280.     move.l    #PGA_Freedom,-(sp)
  1281.     move.l    #\5,-(sp)
  1282.     move.l    #GA_ID,-(sp)
  1283.     move.l    #\4,-(sp)
  1284.     move.l    #SLIDER_Level,-(sp)
  1285.     move.l    #\3,-(sp)
  1286.     move.l    #SLIDER_Max,-(sp)
  1287.     move.l    #\2,-(sp)
  1288.     move.l    #SLIDER_Min,-(sp)
  1289.     move.l    #\1,-(sp)
  1290.     move.l    #LAB_Label,-(sp)
  1291.     movea.l a7,a0
  1292.     moveq    #BGUI_SLIDER_GADGET,d0
  1293.     jsr    _LVOBGUI_NewObjectA(a6)
  1294.     lea    60(sp),sp
  1295.     endm
  1296.  
  1297.     ifd    NOTDONE
  1298. *****************************************************************************
  1299. *
  1300. *    "Quick" mx creation macros.
  1301. *
  1302. #define RightMx(label,labels,active,id)\
  1303.     MxObject,\
  1304.         GROUP_Style,        GRSTYLE_VERTICAL,\
  1305.         LAB_Label,        label,\
  1306.         MX_Labels,        labels,\
  1307.         MX_Active,        active,\
  1308.         GA_ID,            id,\
  1309.     EndObject, FixMinSize
  1310.  
  1311. #define LeftMx(label,labels,active,id)\
  1312.     MxObject,\
  1313.         GROUP_Style,        GRSTYLE_VERTICAL,\
  1314.         LAB_Label,        label,\
  1315.         MX_Labels,        labels,\
  1316.         MX_Active,        active,\
  1317.         MX_LabelPlace,        PLACE_LEFT,\
  1318.         GA_ID,            id,\
  1319.     EndObject, FixMinSize
  1320.  
  1321. #define RightMxKey(label,labels,active,id)\
  1322.     MxObject,\
  1323.         GROUP_Style,        GRSTYLE_VERTICAL,\
  1324.         LAB_Label,        label,\
  1325.         LAB_Underscore,     '_',\
  1326.         MX_Labels,        labels,\
  1327.         MX_Active,        active,\
  1328.         GA_ID,            id,\
  1329.     EndObject, FixMinSize
  1330.  
  1331. #define LeftMxKey(label,labels,active,id)\
  1332.     MxObject,\
  1333.         GROUP_Style,        GRSTYLE_VERTICAL,\
  1334.         LAB_Label,        label,\
  1335.         LAB_Underscore,     '_',\
  1336.         MX_Labels,        labels,\
  1337.         MX_Active,        active,\
  1338.         MX_LabelPlace,        PLACE_LEFT,\
  1339.         GA_ID,            id,\
  1340.     EndObject, FixMinSize
  1341.  
  1342.     endc    * NOTDONE
  1343.  
  1344. *****************************************************************************
  1345. *
  1346. *    "Quick" listview creation macros.
  1347. *
  1348.  
  1349. *
  1350. *    Labeled "listview" gadget
  1351. *
  1352. StrListview    macro    ;label,strings,id
  1353.     ifne    NARG-3
  1354.     fail    'Wrong number of arguments to "StrListview" macro!'
  1355.     exitm
  1356.     endc
  1357.  
  1358.     move.l    #TAG_DONE,-(sp)
  1359.     move.l    #\3,-(sp)
  1360.     move.l    #GA_ID,-(sp)
  1361.     move.l    #\2,-(sp)
  1362.     move.l    #LISTV_EntryArray,-(sp)
  1363.     move.l    #\1,-(sp)
  1364.     move.l    #LAB_Label,-(sp)
  1365.     movea.l a7,a0
  1366.     moveq    #BGUI_LISTVIEW_GADGET,d0
  1367.     jsr    _LVOBGUI_NewObjectA(a6)
  1368.     lea    28(sp),sp
  1369.     endm
  1370.  
  1371. *
  1372. *    Labeled "listview" gadget with sorted entries
  1373. *
  1374. StrListviewSorted    macro    ;label,strings,id
  1375.     ifne    NARG-3
  1376.     fail    'Wrong number of arguments to "StrListviewSorted" macro!'
  1377.     exitm
  1378.     endc
  1379.  
  1380.     move.l    #TAG_DONE,-(sp)
  1381.     move.l    #1,-(sp)
  1382.     move.l    #LISTV_SortEntryArray,-(sp)
  1383.     move.l    #\3,-(sp)
  1384.     move.l    #GA_ID,-(sp)
  1385.     move.l    #\2,-(sp)
  1386.     move.l    #LISTV_EntryArray,-(sp)
  1387.     move.l    #\1,-(sp)
  1388.     move.l    #LAB_Label,-(sp)
  1389.     movea.l a7,a0
  1390.     moveq    #BGUI_LISTVIEW_GADGET,d0
  1391.     jsr    _LVOBGUI_NewObjectA(a6)
  1392.     lea    36(sp),sp
  1393.     endm
  1394.  
  1395. *
  1396. *    Labeled READ-ONLY "listview" gadget
  1397. *
  1398. ReadStrListview macro    ;label,strings
  1399.     ifne    NARG-2
  1400.     fail    'Wrong number of arguments to "ReadStrListview" macro!'
  1401.     exitm
  1402.     endc
  1403.  
  1404.     move.l    #TAG_DONE,-(sp)
  1405.     move.l    #1,-(sp)
  1406.     move.l    #LISTV_ReadOnly,-(sp)
  1407.     move.l    #\2,-(sp)
  1408.     move.l    #LISTV_EntryArray,-(sp)
  1409.     move.l    #\1,-(sp)
  1410.     move.l    #LAB_Label,-(sp)
  1411.     movea.l a7,a0
  1412.     moveq    #BGUI_LISTVIEW_GADGET,d0
  1413.     jsr    _LVOBGUI_NewObjectA(a6)
  1414.     lea    28(sp),sp
  1415.     endm
  1416.  
  1417. *
  1418. *    Labeled READ-ONLY "listview" gadget with sorted entries
  1419. *
  1420. ReadStrListviewSorted    macro    ;label,strings
  1421.     ifne    NARG-2
  1422.     fail    'Wrong number of arguments to "ReadStrListviewSorted" macro!'
  1423.     exitm
  1424.     endc
  1425.  
  1426.     move.l    #TAG_DONE,-(sp)
  1427.     move.l    #1,-(sp)
  1428.     move.l    #LISTV_ReadOnly,-(sp)
  1429.     move.l    #1,-(sp)
  1430.     move.l    #LISTV_SortEntryArray
  1431.     move.l    #\2,-(sp)
  1432.     move.l    #LISTV_EntryArray,-(sp)
  1433.     move.l    #\1,-(sp)
  1434.     move.l    #LAB_Label,-(sp)
  1435.     movea.l a7,a0
  1436.     moveq    #BGUI_LISTVIEW_GADGET,d0
  1437.     jsr    _LVOBGUI_NewObjectA(a6)
  1438.     lea    36(sp),sp
  1439.     endm
  1440.  
  1441. *
  1442. *    Labeled multi-select "listview" gadget
  1443. *
  1444. MultiStrListview    macro    ;label,strings,id
  1445.     ifne    NARG-3
  1446.     fail    'Wrong number of arguments to "MultiStrListview" macro!'
  1447.     exitm
  1448.     endc
  1449.  
  1450.     move.l    #TAG_DONE,-(sp)
  1451.     move.l    #1,-(sp)
  1452.     move.l    #LISTV_MultiSelect,-(sp)
  1453.     move.l    #\3,-(sp)
  1454.     move.l    #GA_ID,-(sp)
  1455.     move.l    #\2,-(sp)
  1456.     move.l    #LISTV_EntryArray,-(sp)
  1457.     move.l    #\1,-(sp)
  1458.     move.l    #LAB_Label,-(sp)
  1459.     movea.l a7,a0
  1460.     moveq    #BGUI_LISTVIEW_GADGET,d0
  1461.     jsr    _LVOBGUI_NewObjectA(a6)
  1462.     lea    36(sp),sp
  1463.     endm
  1464.  
  1465. *
  1466. *    Labeled multi-select "listview" gadget with sorted entries
  1467. *
  1468. MultiStrListviewSorted    macro    ;label,strings,id
  1469.     ifne    NARG-3
  1470.     fail    'Wrong number of arguments to "MultiStrListviewSorted" macro!'
  1471.     exitm
  1472.     endc
  1473.  
  1474.     move.l    #TAG_DONE,-(sp)
  1475.     move.l    #1,-(sp)
  1476.     move.l    #LISTV_MultiSelect,-(sp)
  1477.     move.l    #1,-(sp)
  1478.     move.l    #LISTV_SortEntryArray,-(sp)
  1479.     move.l    #\3,-(sp)
  1480.     move.l    #GA_ID,-(sp)
  1481.     move.l    #\2,-(sp)
  1482.     move.l    #LISTV_EntryArray,-(sp)
  1483.     move.l    #\1,-(sp)
  1484.     move.l    #LAB_Label,-(sp)
  1485.     movea.l a7,a0
  1486.     moveq    #BGUI_LISTVIEW_GADGET,d0
  1487.     jsr    _LVOBGUI_NewObjectA(a6)
  1488.     lea    44(sp),sp
  1489.     endm
  1490.  
  1491.     ifd    NOTDONE
  1492. *****************************************************************************
  1493. *
  1494. *    "Quick" seperator bar creation macros.
  1495. *
  1496. #define VertSeperator\
  1497.     SeperatorObject,\
  1498.     EndObject, FixMinWidth
  1499.  
  1500. #define VertThinSeperator\
  1501.     SeperatorObject,\
  1502.         SEP_Thin,        TRUE,\
  1503.     EndObject, FixMinWidth
  1504.  
  1505. #define HorizSeperator\
  1506.     SeperatorObject,\
  1507.         SEP_Horiz,        TRUE,\
  1508.     EndObject, FixMinHeight
  1509.  
  1510. #define TitleSeperator(t)\
  1511.     SeperatorObject,\
  1512.         SEP_Horiz,        TRUE,\
  1513.         SEP_Title,        t,\
  1514.     EndObject, FixMinHeight
  1515.  
  1516. #define HTitleSeperator(t)\
  1517.     SeperatorObject,\
  1518.         SEP_Horiz,        TRUE,\
  1519.         SEP_Title,        t,\
  1520.         SEP_Highlight,        TRUE,\
  1521.     EndObject, FixMinHeight
  1522.  
  1523. #define CTitleSeperator(t)\
  1524.     SeperatorObject,\
  1525.         SEP_Horiz,        TRUE,\
  1526.         SEP_Title,        t,\
  1527.         SEP_CenterTitle,    TRUE,\
  1528.     EndObject, FixMinHeight
  1529.  
  1530. #define CHTitleSeperator(t)\
  1531.     SeperatorObject,\
  1532.         SEP_Horiz,        TRUE,\
  1533.         SEP_Title,        t,\
  1534.         SEP_Highlight,        TRUE,\
  1535.         SEP_CenterTitle,    TRUE,\
  1536.     EndObject, FixMinHeight
  1537.  
  1538. *****************************************************************************
  1539. *
  1540. *    Some simple menu macros.
  1541. *
  1542. #define Title(t)\
  1543.     { NM_TITLE, t, NULL, 0, 0, NULL }
  1544. #define Item(t,s,i)\
  1545.     { NM_ITEM, t, s, 0, 0, (APTR)i }
  1546. #define ItemBar\
  1547.     { NM_ITEM, NM_BARLABEL, NULL, 0, 0, NULL }
  1548. #define SubItem(t,s,i)\
  1549.     { NM_SUB, t, s, 0, 0, (APTR)i }
  1550. #define SubBar\
  1551.     { NM_SUB, NM_BARLABEL, NULL, 0, 0, NULL }
  1552. #define End\
  1553.     { NM_END, NULL, NULL, 0, 0, NULL }
  1554.  
  1555. *****************************************************************************
  1556. *
  1557. *    Base class method macros.
  1558. *
  1559. #define AddMap(object,target,map)\
  1560.     DoMethod( object, BASE_ADDMAP, target, map )
  1561.  
  1562. #define AddCondit(object,target,ttag,tdat,ftag,fdat,stag,sdat)\
  1563.     DoMethod( object, BASE_ADDCONDITIONAL, target,\
  1564.           ttag, tdat,\
  1565.           ftag, fdat,\
  1566.           stag, sdat )
  1567.  
  1568. #define AddHook(object,hook)\
  1569.     DoMethod( object, BASE_ADDHOOK, hook )
  1570.  
  1571. #define RemMap(object,target)\
  1572.     DoMethod( object, BASE_REMMAP, target )
  1573.  
  1574. #define RemCondit(object,target)\
  1575.     DoMethod( object, BASE_REMCONDITIONAL, target )
  1576.  
  1577. #define RemHook( object,hook)\
  1578.     DoMethod( object, BASE_REMHOOK, hook )
  1579.  
  1580. *****************************************************************************
  1581. *
  1582. *    Listview class method macros.
  1583. *
  1584. #define AddEntry(window,object,entry,how)\
  1585.     BGUI_DoGadgetMethod( object, window, NULL, LVM_ADDSINGLE,\
  1586.                  NULL, entry, how, 0L )
  1587.  
  1588. #define AddEntryVisible(window,object,entry,how)\
  1589.     BGUI_DoGadgetMethod( object, window, NULL, LVM_ADDSINGLE,\
  1590.                  NULL, entry, how, LVASF_MAKEVISIBLE )
  1591.  
  1592. #define AddEntrySelect(window,object,entry,how)\
  1593.     BGUI_DoGadgetMethod( object, window, NULL, LVM_ADDSINGLE,\
  1594.                  NULL, entry, how, LVASF_SELECT )
  1595.  
  1596. #define ClearList(window,object)\
  1597.     BGUI_DoGadgetMethod( object, window, NULL, LVM_CLEAR, NULL )
  1598.  
  1599. #define FirstEntry(object)\
  1600.     DoMethod( object, LVM_FIRSTENTRY, NULL, 0L )
  1601.  
  1602. #define FirstSelected(object)\
  1603.     DoMethod( object, LVM_FIRSTENTRY, NULL, LVGEF_SELECTED )
  1604.  
  1605. #define LastEntry(object)\
  1606.     DoMethod( object, LVM_LASTENTRY, NULL, 0L )
  1607.  
  1608. #define LastSelected(object)\
  1609.     DoMethod( object, LVM_LASTENTRY, NULL, LVGEF_SELECTED )
  1610.  
  1611. #define NextEntry(object,last)\
  1612.     DoMethod( object, LVM_NEXTENTRY, last, 0L )
  1613.  
  1614. #define NextSelected(object,last)\
  1615.     DoMethod( object, LVM_NEXTENTRY, last, LVGEF_SELECTED )
  1616.  
  1617. #define PrevEntry(object,last)\
  1618.     DoMethod( object, LVM_PREVENTRY, last, 0L )
  1619.  
  1620. #define PrevSelected(object,last)\
  1621.     DoMethod( object, LVM_PREVENTRY, last, LVGEF_SELECTED )
  1622.  
  1623. #define RemoveEntry(object,entry)\
  1624.     DoMethod( object, LVM_REMENTRY, NULL, entry )
  1625.  
  1626. #define RemoveEntryVisible(window,object,entry)\
  1627.     BGUI_DoGadgetMethod( object, window, NULL, LVM_REMENTRY, NULL, entry )
  1628.  
  1629. #define RefreshList(window,object)\
  1630.     BGUI_DoGadgetMethod( object, window, NULL, LVM_REFRESH, NULL )
  1631.  
  1632. #define SortList(window,object)\
  1633.     BGUI_DoGadgetMethod( object, window, NULL, LVM_SORT, NULL )
  1634.  
  1635. #define LockList(object)\
  1636.     DoMethod( object, LVM_LOCKLIST, NULL )
  1637.  
  1638. #define UnlockList(window,object)\
  1639.     BGUI_DoGadgetMethod( object, window, NULL, LVM_UNLOCKLIST, NULL )
  1640.  
  1641. *****************************************************************************
  1642. *
  1643. *    Window class method macros.
  1644. *
  1645. #define GadgetKey(wobj,gobj,key)\
  1646.     DoMethod( wobj, WM_GADGETKEY, NULL, gobj, key )
  1647.  
  1648. #define WindowOpen(wobj)\
  1649.     ( struct Window * )DoMethod( wobj, WM_OPEN )
  1650.  
  1651. #define WindowClose(wobj)\
  1652.     DoMethod( wobj, WM_CLOSE )
  1653.  
  1654. #define WindowBusy(wobj)\
  1655.     DoMethod( wobj, WM_SLEEP )
  1656.  
  1657. #define WindowReady(wobj)\
  1658.     DoMethod( wobj, WM_WAKEUP )
  1659.  
  1660. #define HandleEvent(wobj)\
  1661.     DoMethod( wobj, WM_HANDLEIDCMP )
  1662.  
  1663. #define DisableMenu(wobj,id,set)\
  1664.     DoMethod( wobj, WM_DISABLEMENU, id, set )
  1665.  
  1666. #define CheckItem(wobj,id,set)\
  1667.     DoMethod( wobj, WM_CHECKITEM, id, set )
  1668.  
  1669. #define MenuDisabled(wobj,id)\
  1670.     DoMethod( wobj, WM_MENUDISABLED, id )
  1671.  
  1672. #define ItemChecked(wobj,id)\
  1673.     DoMethod( wobj, WM_ITEMCHECKED, id )
  1674.  
  1675. #define GetAppMsg(wobj)\
  1676.     ( struct AppMessage * )DoMethod( wobj, WM_GETAPPMSG )
  1677.  
  1678. #define AddUpdate(wobj,id,target,map)\
  1679.     DoMethod( wobj, WM_ADDUPDATE, id, target, map )
  1680.  
  1681. *****************************************************************************
  1682. *
  1683. *    Commodity class method macros.
  1684. *
  1685. #define AddHotkey(broker,desc,id,flags)\
  1686.     DoMethod( broker, CM_ADDHOTKEY, desc, id, flags )
  1687.  
  1688. #define RemHotkey(broker,id)\
  1689.     DoMethod( broker, CM_REMHOTKEY, id )
  1690.  
  1691. #define DisableHotkey(broker,id)\
  1692.     DoMethod( broker, CM_DISABLEHOTKEY, id )
  1693.  
  1694. #define EnableHotKey(broker,id)\
  1695.     DoMethod( broker, CM_ENABLEHOTKEY, id )
  1696.  
  1697. #define EnableBroker(broker)\
  1698.     DoMethod( broker, CM_ENABLEBROKER )
  1699.  
  1700. #define DisableBroker(broker)\
  1701.     DoMethod( broker, CM_DISABLEBROKER )
  1702.  
  1703. #define MsgInfo(broker,type,id,data)\
  1704.     DoMethod( broker, CM_MSGINFO,\
  1705.           ( ULONG * )type,\
  1706.           ( ULONG * )id,\
  1707.           ( ULONG * )data )
  1708.  
  1709. *****************************************************************************
  1710. *
  1711. *    FileReq class method macros.
  1712. *
  1713. #define DoRequest(object)\
  1714.     DoMethod( object, FRM_DOREQUEST )
  1715.  
  1716.     endc    * NOTDONE!
  1717.  
  1718.     endc    * LIBRARIES_BGUI_MACROS_I
  1719.